//
//  DYPhotoScanManager.h
//  PrivatePhoto
//
//  Created by PrivatePhoto Team on 2021.
//  Copyright © 2021年 PrivatePhoto Team. All rights reserved.6.
//

#import <Foundation/Foundation.h>
#import <Photos/Photos.h>

@interface CAPhotoScanInfo : NSObject
@property (nonatomic, strong) NSMutableArray *InfoArray;
@property (nonatomic, strong) NSMutableArray *seletedPicArray;
@property (nonatomic, assign) NSUInteger saveSpace;
@property (nonatomic, assign) NSInteger count;
@property (nonatomic, assign) CAClearAlbumType cleanType;
@property (nonatomic, assign) BOOL is_seleted;
@end


@protocol CAPhotoScanManagerDelegate<NSObject>
@optional
/// 相册变动代理方法
- (void)clearPhotoLibraryDidChange;
@end

@interface DYPhotoScanManager : NSObject

//+ (DYPhotoScanManager *)shareManager;

/// 代理
@property (nonatomic, weak) id<CAPhotoScanManagerDelegate> delegate;

/// 变更状态
@property (nonatomic, assign) CAPhotoNotificationStatus notificationStatus;

@property (nonatomic, strong) CAPhotoScanInfo *similarData;
@property (nonatomic, strong) CAPhotoScanInfo *screenshotsData;
@property (nonatomic, strong) CAPhotoScanInfo *samePhotsData;
@property (nonatomic, strong) CAPhotoScanInfo *livePhotsData;

/// 相似照片信息
@property (nonatomic, strong) NSDictionary *similarInfo;
@property (nonatomic, strong) NSMutableArray *similarArr;//, readonly

/// 截图照片信息
@property (nonatomic, strong) NSDictionary *screenshotsInfo;
@property (nonatomic, strong) NSMutableArray *screenshotsArr;//, readonly

/// 相同照片信息
@property (nonatomic, strong) NSDictionary *samePhotsInfo;
@property (nonatomic, strong) NSMutableArray *samePhotsArr;//, readonly

/// 相同照片信息
@property (nonatomic, strong) NSDictionary *livePhotsInfo;
@property (nonatomic, strong) NSMutableArray *livePhotsArr;

/// 节约空间 [dict3,dict4,....]
@property (nonatomic, assign) double totalSaveSpace;

/// 加载照片
- (void)loadPhotoWithProcess:(void (^)(NSInteger current, NSInteger total))process
           completionHandler:(void (^)(BOOL success, NSError *error))completion;
- (void)resetTagData;
+ (void)tipWithMessage:(NSString *)str;

@end

